<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/BackupContracts.Tasks" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/BackupContracts.Tasks" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="https://localhost/BackupService.svc?xsd=xsd5" namespace="http://schemas.datacontract.org/2004/07/System" />
  <xs:import schemaLocation="https://localhost/BackupService.svc?xsd=xsd3" namespace="http://schemas.datacontract.org/2004/07/BackupContracts" />
  <xs:import schemaLocation="https://localhost/BackupService.svc?xsd=xsd6" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:complexType name="Task">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q1="http://schemas.datacontract.org/2004/07/BackupContracts" base="q1:ModelBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Actions" nillable="true" type="tns:ArrayOfTaskAction" />
          <xs:element minOccurs="0" name="Enabled" type="xs:boolean" />
          <xs:element minOccurs="0" name="Id" nillable="true" type="xs:string" />
          <xs:element xmlns:q2="http://schemas.datacontract.org/2004/07/System" minOccurs="0" name="LastExecution" nillable="true" type="q2:DateTimeOffset" />
          <xs:element xmlns:q3="http://schemas.datacontract.org/2004/07/System" minOccurs="0" name="LastExecutionStart" nillable="true" type="q3:DateTimeOffset" />
          <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Schedules" nillable="true" type="tns:ArrayOfSchedule" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Task" nillable="true" type="tns:Task" />
  <xs:complexType name="ArrayOfTaskAction">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="TaskAction" nillable="true" type="tns:TaskAction" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfTaskAction" nillable="true" type="tns:ArrayOfTaskAction" />
  <xs:complexType name="TaskAction">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q4="http://schemas.datacontract.org/2004/07/BackupContracts" base="q4:ModelBase">
        <xs:sequence />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="TaskAction" nillable="true" type="tns:TaskAction" />
  <xs:complexType name="ArrayOfSchedule">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Schedule" nillable="true" type="tns:Schedule" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfSchedule" nillable="true" type="tns:ArrayOfSchedule" />
  <xs:complexType name="Schedule">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q5="http://schemas.datacontract.org/2004/07/BackupContracts" base="q5:ModelBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Days" nillable="true" type="tns:ArrayOfSelectablePeriod" />
          <xs:element xmlns:q6="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="DaysIds" nillable="true" type="q6:ArrayOfint" />
          <xs:element minOccurs="0" name="DaysOfWeek" nillable="true" type="tns:ArrayOfSelectablePeriod" />
          <xs:element xmlns:q7="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="DaysOfWeekIds" nillable="true" type="q7:ArrayOfint" />
          <xs:element xmlns:q8="http://schemas.datacontract.org/2004/07/System" minOccurs="0" name="LastExecution" nillable="true" type="q8:DateTimeOffset" />
          <xs:element minOccurs="0" name="Months" nillable="true" type="tns:ArrayOfSelectablePeriod" />
          <xs:element xmlns:q9="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="MonthsIds" nillable="true" type="q9:ArrayOfint" />
          <xs:element minOccurs="0" name="RecurEveryX" type="xs:int" />
          <xs:element minOccurs="0" name="ScheduleType" type="tns:ScheduleType" />
          <xs:element xmlns:q10="http://schemas.datacontract.org/2004/07/System" minOccurs="0" name="Start" type="q10:DateTimeOffset" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Schedule" nillable="true" type="tns:Schedule" />
  <xs:complexType name="ArrayOfSelectablePeriod">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="SelectablePeriod" nillable="true" type="tns:SelectablePeriod" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfSelectablePeriod" nillable="true" type="tns:ArrayOfSelectablePeriod" />
  <xs:complexType name="SelectablePeriod">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q11="http://schemas.datacontract.org/2004/07/BackupContracts" base="q11:ModelBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Id" type="xs:int" />
          <xs:element minOccurs="0" name="SelectablePeriodType" type="tns:SelectablePeriodType" />
          <xs:element minOccurs="0" name="Selected" type="xs:boolean" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="SelectablePeriod" nillable="true" type="tns:SelectablePeriod" />
  <xs:simpleType name="SelectablePeriodType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="DayOfWeek" />
      <xs:enumeration value="Day" />
      <xs:enumeration value="Month" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="SelectablePeriodType" nillable="true" type="tns:SelectablePeriodType" />
  <xs:simpleType name="ScheduleType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="OneTime" />
      <xs:enumeration value="Daily" />
      <xs:enumeration value="Weekly" />
      <xs:enumeration value="Month" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="ScheduleType" nillable="true" type="tns:ScheduleType" />
  <xs:complexType name="ArrayOfTask">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Task" nillable="true" type="tns:Task" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfTask" nillable="true" type="tns:ArrayOfTask" />
</xs:schema>